$(function () {
    var usernamecheck = false;
    var passwordcheck = false;
    var password_Guaranteecheck = false;
    var emailcheck = false;


    $(".err").each(function () {
        showERR($(this));
    });
    $(".input_class").focus(function () { //得到焦点清除错误信息
        var id = ($(this).attr("id"));
        ERRID = id + "ERR";
        var ele = $("#" + ERRID)
        ele.text("");
        showERR(ele);
    });
    $("#email").click(function () {
        var id = ($(this).attr("id"));
        ERRID = id + "ERR";
        var ele = $("#" + ERRID)
        ele.text("");
        showERR(ele);
    })
    $("#username").blur(function () {    //用户名输入框失去焦点校验
        var value = $("#username").val();
        var uPattern = /^[a-zA-Z0-9_-]{4,16}$/; //4-16位字母数字下划线
        var Pattern1 = /^.*(?=.{6,}).*$/   //至少6位
        var Pattern2 = /^.*(?=.*\d).*$/  //至少包含一个数字字母
        var Pattern3 = /^.*(?=.*[a-zA-Z]).*$/
        var check = true;
        if ($(this).val() == null || $(this).val() == "") {
            //非空校验
            $("#usernameERR").text("用户名不能为空");
            check = false;
        } else if (!Pattern1.test(value)) {
            $("#usernameERR").text("用户名至少6位");
            check = false;
        } else if (!Pattern2.test(value)) {
            $("#usernameERR").text("至少包含一个数字");
            check = false;
        } else if (!Pattern3.test(value)) {
            $("#usernameERR").text("至少包含一个字母");
            check = false;
        }
        //查询是否重复  需要后台配合
        if (check) {
            $.ajax({
                type: "GET",
                url: "/blog/users/checkusername",
                data: {
                    "username": value
                },
                dataType: "JSON",
                success: function (data) {
                    $("#usernameERR").text(data.message);
                    $("#usernameERR").show();
                    if (data.state == 200) {
                        usernamecheck = true;
                    }
                }
            });
        }
        showERR($("#usernameERR"));
    })
    $("#password").blur(function () {     //密码框失去焦点校验
        var uPattern = /^.*(?=.{6,})(?=.*\d)(?=.*[a-zA-Z])(?=.*[!@#$%^&*? ]).*$/;   //至少6位 至少一个数字  一个字母  一个特殊符号
        var Pattern1 = /^.*(?=.{6,}).*$/   //至少6位
        var Pattern2 = /^.*(?=.*\d).*$/  //至少包含一个数字
        var Pattern3 = /^.*(?=.*[a-zA-Z]).*$/  //至少一个字母
        var Pattern4 = /^.*(?=.*[!@#$%^&*? ]).*$/   //至少一个字母
        var password = $(this).val();
        var check = true;
        if (password == null || password == "") {
            $("#passwordERR").text("密码不能为空");
            check = false;
        } else if (!Pattern1.test(password)) {
            $("#passwordERR").text("密码至少6位");
            check = false;
        } else if (!Pattern2.test(password)) {
            $("#passwordERR").text("至少包含一个数字");
            check = false;
        } else if (!Pattern3.test(password)) {
            $("#passwordERR").text("至少包含一个字母");
            check = false;
        } else if (!Pattern4.test(password)) {
            $("#passwordERR").text("至少包含一个字符");
            check = false;
        }
        if (check) {
            passwordcheck = true;
        }
        showERR($("#passwordERR"));
    })
    $("#password_Guarantee").blur(function () {
        var password = $("#password").val();
        var guarantee = $("#password_Guarantee").val();
        var check = true;
        if (guarantee == null || guarantee == "") {
            $("#password_GuaranteeERR").text("密码不能为空");//非空检验
            check = false;
        } else if (guarantee != password) {
            $("#password_GuaranteeERR").text("输入的密码不一致");//一致性检测
            check = false;
        }
        if (check) {
            password_Guaranteecheck = true;
        }
        showERR($("#password_GuaranteeERR"));
    })
    $("#email").blur(function () {
        var email = $(this).val();
        var reg = new RegExp("^[a-z0-9A-Z]+[- | a-z0-9A-Z . _]+@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-z]{2,}$");
        var check = reg.test(email);
        var boolean = true;
        if (email == null || email == "") {
            $("#emailERR").text("邮箱不能为空");//一致性检测
            boolean = false;
        } else if (!check) {
            $("#emailERR").text("邮箱格式不对");//邮箱格式检测	
            boolean = false;
        }
        if (boolean) {
            emailcheck = true;
        }
        showERR($("#emailERR"));
    })
    $("#submit").click(function () {
        $(this).attr("disabled", "disabled");
        if (!(usernamecheck && passwordcheck && password_Guaranteecheck && emailcheck)) {
            alert("输入信息有误，请完善");
            return false;
        }
        var username = $("#username").val();
        var password = $("#password").val();
        var email = $("#email").val();
        var code = $("#verifiedcode").val();
        $.ajax({
            type: "POST",
            url: "/blog/users/reg",
            data: {
                "username": username,
                "password": password,
                "email": email,
                "code": code
            },

            dataType: "JSON",
            success: function (response) {
                alert(response.message);
            }
        });

    });

    var count = 0;
    document.onmousedown = function (event) {

        console.log(count)
        var pos = count % 4;
        var ev = event;
        var x = ev.pageX;			                            //鼠标相对于html横坐标
        var y = ev.pageY;				                        //鼠标相对于html纵坐标坐标

        var words = "";
        console.log(x + "  " + y)
        if (x > 1212 && x < 1722 && y > 365 && y < 365 + 385) {
            return;
        }
        switch (pos) {
            case 0:
                words = "好"
                break;
            case 1:
                words = "好"
                break;
            case 2:
                words = "生"
                break;
            case 3:
                words = "活"
                break;
            default:
                break;
        }
        var p = $("<p class='word' onselectstart='return false;'>" + words + "</p>")
        $("body").append(p);                                    //把生成好的P标签加到body中      p标签样式
        /* .word{
            color: orangered;
            position: absolute;
            font-size: 30px;
        }*/
        p.offset({left: x - 15, top: y - 20});                         //设定p标签位置    -15    -20   为了让鼠标点击时正好在字当中
                                                                       //  下面是最重要的方法   Jquery方法    原生JS也能写       比较麻烦
                                                                       //  animate  {要变化的属性值  opacity是透明度    fontSize是字体大小   多个属性值逗号隔开} ，变化的时间  毫秒
                                                                       //  ，变化的形式   "linear"  好像是匀速变化 ，最后是变化完执行的方法
        p.animate({'opacity': '0', 'fontSize': 40}, 1500, "linear", function () {
            p.remove();//变完后  自杀  
        })
        count++;
    }


})

function showERR(ele) {
    var text = ele.text();
    if (!text) {
        ele.hide();
    } else {
        ele.show();
    }
}







